package cn.cdeden.knowledge.domain.dto;

import lombok.Data;

/**
 * @ProjectName : dms_be_2024
 * @Package : com.cdyd.ecm.utils.dto
 * @ClassName : UserHideInfoDto
 * @Author : Yu.
 * @Description : // 隐藏的用户部分基本信息
 * @Date : 2024/8/9 13:51
 * @Version : 1.0
 */
@Data
public class UserHideInfoDto {

    private Long id;

//    private Set<RoleSmallDto> roles;
//
//    private Set<JobSmallDto> jobs;


    /**
     * 部门信息
     **/
    private DeptSmallDto dept;

    /**
     * 部门编号
     */
    private Long deptId;

    /**
     * 用户名
     */
    private String username;

    /**
     * 昵称
     */
    private String nickName;

    /**
     * 性别
     */
    private String gender;

    /**
     * 手机号码
     */
    private String phone;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 头像网络地址
     */
    private String storageAvatarPath;


    /**
     * 工号
     */

    private String jobNumber;


    private Boolean enabled;

    // 重写equals方法，根据id判断相等性
    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        UserHideInfoDto that = (UserHideInfoDto) o;
        return id.equals(that.id);
    }

    // 重写hashCode方法，根据id生成哈希值
    @Override
    public int hashCode() {
        return Long.hashCode(id);
    }
}
